software composition software circuits fibre optic software development chromatic dispersion consulting cwdm dwdm data optic java fiber software architecture polarization mode dispersion sdh fibre software analysis pmd